package com.hightrast.service.api.domain.qo.rastOrderItem;

import com.hightrast.service.api.baseEntity.BaseFiler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDate;

/**
 * <p>
 * 订单项列表请求
 * </p>
 *
 * @author hx
 * @since 2025-01-24
 */
@Data
@ApiModel(value="订单项列表请求")
public class QueryOrderProductItemsQo extends BaseFiler {

    @ApiModelProperty(value = "商品标题")
    private String title;

    @ApiModelProperty(value = "商品变体名称")
    private String variantTitle;

    @ApiModelProperty(value = "商品折扣-开始范围值")
    private Integer startTotalDiscount;

    @ApiModelProperty(value = "商品折扣-结束范围值")
    private Integer endTotalDiscount;

    @ApiModelProperty(value = "商品折扣类型")
    private String discountType;

    @ApiModelProperty(value = "商品最终价格价格-开始范围值")
    private Integer startFinalPrice;

    @ApiModelProperty(value = "商品最终价格价格-结束范围值")
    private Integer endFinalPrice;

    @ApiModelProperty(value = "商品数量-开始范围值")
    private Integer startQuantity;

    @ApiModelProperty(value = "商品数量-结束范围值")
    private Integer endQuantity;


    @ApiModelProperty(value = "订单编号")
    private String orderNumber;

    @ApiModelProperty(value = "商品类型")
    private String productType;

    @ApiModelProperty(value = "商品原价格-开始范围值")
    private Integer startOriginalPrice;

    @ApiModelProperty(value = "商品原价格-结束范围值")
    private Integer endOriginalPrice;

    @ApiModelProperty(value = "订单创建时间-开始范围值")
    private LocalDate startCreatedAt;

    @ApiModelProperty(value = "订单创建时间-结束范围值")
    private LocalDate endCreatedAt;

    @ApiModelProperty(value = "选中的设计师")
    private Long selectUserId;

    @ApiModelProperty(value = "品牌，前端不传，后端使用",hidden = true)
    private String vendor;

    @ApiModelProperty(value = "订单状态，1-Goods Received 已到货，2-Return Goods 已退款，3-In Transit 进行中")
    private Integer orderStatus;

    //根据orderStatus 如果货物已经到了，那么就是默认Issuing状态，如果货物已经退款的话，那么就是Not issued状态，然后还剩一个Issued状态的话就需要管理员手动去设置
    @ApiModelProperty(value = "佣金发放状态，1-Issuing 发放中，2-Not issued 不发放，3-Issued 已发放")
    private Integer paybackStatus;

    @ApiModelProperty(value = "查询当前用户的商品项",hidden = true)
    private Long userId;
}
